<?php

include_once("../modelo/conexion.php");

class Cancha {

    var $id_cancha;
    var $nombre;
    var $descripcion;
    var $tipo;
    var $id_ubicacion;
    var $enable;
    var $precio = null;

    public function __construct($id = null, $nombre = "", $descripcion = "", $tipo = 0, $enable = "", $precio = 0,$id_ubicacion = null) {
        $this->id_cancha = $id_cancha;
        $this->nombre = $nombre;
        $this->descripcion = $descripcion;
        $this->tipo = $tipo;
        $this->enable = $enable;
        $this->precio = $precio;
        $this->id_ubicacion = $id_ubicacion;
//        $this->anti_inyection();
    }

    public function getId() {
        return $this->id_cancha;
    }

    public function setId($id_cancha) {
        $this->id_cancha = $id_cancha;
    }

    public function getNombre() {
        return $this->nombre;
    }

    public function setNombre($nombre) {
        $this->nombre = $nombre;
    }

    public function getDescripcion() {
        return $this->descripcion;
    }

    public function setDescripcion($descripcion) {
        $this->descripcion = $descripcion;
    }

    public function getTipo() {
        return $this->tipo;
    }

    public function setTipo($tipo) {
        $this->tipo = $tipo;
    }

    public function getId_ubicacion() {
        return $this->id_ubicacion;
    }

    public function setId_ubicacion($id_ubicacion) {
        $this->id_ubicacion = $id_ubicacion;
    }

    public function getEnable() {
        return $this->enable;
    }

    public function setEnable($enable) {
        $this->enable = $enable;
    }

    public function getPrecio() {
        return $this->precio;
    }

    public function setPrecio($precio) {
        $this->precio = $precio;
    }
/*
    public function sql_quote($valor) {
        //comprueba si existe la función  
        if (function_exists("mysql_real_escape_string")) {
            $valor = mysql_real_escape_string($valor);
        }
//para las versiones < 4.3.0 de php usamos addslashes  
        else {
            $valor = addslashes($valor);
        }
        return $valor;
    }

    public function anti_inyection() {
        $this->id_cancha = $this->sql_quote($this->id_cancha);
        $this->nombre = $this->sql_quote($this->nombre);
        $this->descripcion = $this->sql_quote($this->descripcion);
        $this->tipo = $this->sql_quote($this->tipo);
        $this->ubicacion = $this->sql_quote($this->ubicacion);
        $this->enable = $this->sql_quote($this->enable);
        $this->precio = $this->sql_quote($this->precio);
        $this->consultar = $this->sql_quote($this->consultar);
    }
*/
    public function select_canchas($con) {
        $strselect = "SELECT * FROM canchas order by nombre;";
        $resultado = mysql_query($strselect, $con);
        return $resultado;
    }
    public function select_canchaXid($con) {
        $this->anti_inyection();
        $strselect = "SELECT * FROM canchas WHERE id_cancha ='$this->id_cancha';";
        $resultado = mysql_query($strselect, $con);
        return $resultado;
    }

    
    public function select_canchaXnombre($con) {
        $this->anti_inyection();
        $strselect = "SELECT * FROM canchas WHERE nombre='$this->nombre';";
        $resultado = mysql_query($strselect, $con);
        return $resultado;
    }

    public function select_canchaXcategoriaXpagina($con, $inicio, $registros) {
        $this->anti_inyection();
        $strselect = "SELECT * FROM canchas WHERE tipo='$this->tipo' and enable=1 LIMIT $inicio, $registros;";
        $resultado = mysql_query($strselect, $con);
        return $resultado;
    }

    public function select_canchaXtipo($con, $tipo) {
        $this->anti_inyection();
        $strselect = "SELECT * FROM canchas WHERE tipo='$tipo' and enable=1;";
        $resultado = mysql_query($strselect, $con);
        return $resultado;
    }

    public function modificar_cancha($con) {//quede aca no anda el nombre
        $strupdate = "UPDATE canchas SET nombre='".$this->nombre."',descripcion = '".$this->descripcion."',tipo=".$this->tipo.", id_ubicacion =".$this->id_ubicacion.",enable=".$this->enable.",precio='".$this->precio."' WHERE  id_cancha=".$this->id_cancha;
        mysql_query($strupdate, $con) or die(mysql_error());
    }

    public function eliminar_cancha($con) {
        $this->anti_inyection();
        $strdelete = "delete  from canchas where  id_cancha='$this->id_cancha';";
        mysql_query($strdelete, $con) or die(mysql_error());
    }

    public function insertar_cancha($con) {
        if (empty($con)) {
            $con = mysql_connect("localhost", "root", "root");
            mysql_select_db("reservasf5", $con);
        }
//        $this->anti_inyection();
        $strinsert = "insert into canchas (nombre, descripcion, tipo, enable, precio, id_ubicacion) values ('".$this->nombre."','".$this->descripcion."','".$this->tipo."',".$this->enable.",'".$this->precio."',".$this->id_ubicacion.")";
        $result = mysql_query($strinsert, $con) or die(mysql_error());
        $idCancha = mysql_insert_id();
        return $idCancha;
    }

    
    public function modificar_canchaXcampo($con, $id_prod, $campo, $dato) {
        $this->anti_inyection();
        $strupdate = "UPDATE PRODUCTOS SET $campo='$dato' WHERE ID_PRODUCTO=$id_prod;";
        mysql_query($strupdate, $con) or die(mysql_error());
    }

    public function existeCancha($con) {
        if (empty($con)) {
            $con = new Conexion();
        }
        $this->anti_inyection();
        $string = "SELECT COUNT(nombre)" .
                " FROM canchas WHERE nombre='" . $this->nombre . "'";

        $result = mysql_query($string, $con) or die(mysql_error());
        $row = mysql_fetch_row($result);
        $totalRows = $row[0];

        if ($totalRows > 0) {
            return true;
        } else {
            return false;
        }
    }

    public function getCancha($con, $id) {
        if (empty($con)) {
            $con = new Conexion();
        }
        $this->anti_inyection();
        $strselect = "SELECT * FROM canchas WHERE id_cancha ='$id';";
        $res = mysql_query($strselect, $con);
        $this->asignar_cancha(mysql_result($res, 0, "id_cancha"), mysql_result($res, 0, "nombre"), mysql_result($res, 0, "descripcion"), mysql_result($res, 0, "tipo"), mysql_result($res, 0, "enable"), mysql_result($res, 0, "precio"));
    }

    public function existeCanchaQueNoSeaEste($con) {
        if (empty($con)) {
            $con = new Conexion();
        }
        $this->anti_inyection();
        $string = "SELECT COUNT(nombre)" .
                " FROM canchas WHERE nombre='" . $this->nombre . "'" .
                " AND id_cancha<>" . $this->id_cancha;

        $result = mysql_query($string, $con) or die(mysql_error());
        $row = mysql_fetch_row($result);
        $totalRows = $row[0];

        if ($totalRows > 0) {
            return true;
        } else {
            return false;
        }
    }

    public function is_Disponible($con, $id_cancha, $fecha_reserva) {
        $this->anti_inyection();
        $strselect = "SELECT count(*) as cantidad FROM reservas WHERE " .
                "DATE_FORMAT(fecha_reserva,  '" . FORMATO_FECHA_SQL . "')='".$fecha_reserva."' " .
                "and id_cancha=".$id_cancha.";";
        $res = mysql_query($strselect, $con) or die(mysql_error());

        $sql = mysql_fetch_array($res);
        if ($sql['cantidad'] == 0) {
            return True;
        } else {
            return False;
        }
    }

    public function select_tipos($con = null) {
        if (empty($con)) {
            $con = new Conexion();
        }
        $sql = "select distinct tipo from canchas";
        $res = $con->Ejecuto($sql, $con);
        

        return $res;
    }

    public function getCaracteristicas($con) {
        if (empty($con)) {
            $con = new Conexion();
        }
        $idCancha = $this->getId();
        $sql = "select * from `canchas_caracteristicas` where id_cancha = " . $idCancha;
        $res = $con->Ejecuto($sql);
        return $res;
    }

    public function altaCaracteristicas($con) {
        $array = array
            ("pasto_artificial" => 0,
            "pasto_natural" => 0,
            "tierra" => 0,
            "cantina" => 0,
            "chalecos" => 0,
            "duchas" => 0,
            "techada" => 0,
            "luz" => 0,
            "parrillero" => 0
        );
        $devuelvo = "";
        $cant_Aux = 0;

        $devuelvo.= "<table><tbody>";

        foreach ($array as $campo => $valor) {
            if ($cant_Aux % 2 == 0) {
                $devuelvo .= "<tr>";
            }
            $lblCampo = ereg_replace("_", " ", $campo);
            $devuelvo .= "<td>" . $lblCampo . "</td><td><input type='checkbox' value = '1' name='car_" . $campo . "' id='car_" . $campo . "' value='" . $valor . "'/></td>";
            $cant_Aux+=1;
        }

        $devuelvo.= "</tr></tbody></table>";
        return $devuelvo;
    }

}

?>
